Skip to main content

Contributing to the design system

Overview

Veteran-facing teams are expected to use design system patterns and components when possible. If existing components or patterns will not work to address needed designs, teams can suggest new components or patterns by going through the process outlined below.

All new components or patterns should go through this process. We recommend starting this process before sharing new designs widely with stakeholders.

This process works best if started before development begins, during the design phase.

When considering if a component or pattern should be added to the design system there are a few criteria that define a “good” candidate:

  1. The component or pattern is already being used on more than one screen, or the designer can give examples of multiple places the component could be used.
  2. The component or pattern is different in more than one major way than existing components in the design system, if the component is only different in color or format, for instance, then it would be better as a variant of the existing component. Note that variants of existing components should also go through this experimental process.
  3. Our existing components and patterns will not solve the user problems sufficiently.
  4. Native components and patterns will not solve the user problems sufficiently.

Suggest an addition or update

Step 1

Review the criteria for a “good” candidate above.

  • If your addition or update is a good candidate, proceed to Step 2.
  • If you’re not sure if it’s a good candidate, reach out to the Design System team in Slack.

Step 2

Fill out the GitHub issue template for contributing to the design system. In the issue, you will need to provide justification for the component or pattern, and link to any artifacts you want to include.

  • Note that you do not need to have anything coded at this point, and in fact, we suggest not having anything coded since ideally ideas would be surfaced before teams put effort into building new components.
  • Additionally, the artifacts you include do not need to be high fidelity. They only need to be able to illustrate your concept. We do, however, encourage some thoughts on how your component or pattern will work.

After filling out the issue template, post in the Design System slack channel to alert the team that you have filled out an issue. The team will reach out to you with any questions, feedback, and next steps.

Step 3

Work with the Design System team to add your component to the backlog, update or add the component in Figma, write usage guidelines for it, and build it into the design system.